Link aggregation is a technology that can be used to link together multiple network ports to create a level of redundancy within a networked environment and to increase the speed by which information is transmitted and processed. In some instances, link aggregation can be used to load balance network traffic amongst multiple network interface cards (NICs), and can provide a level of fault tolerance and redundancy should one or more NICs fail. In most cases implementations of link aggregation in a system may conform to the IEEE 802.1AX standard or the IEEE 802.3ad standard. Link aggregation can be accomplished by teaming NICs together using teaming software or some other software or hardware configuration able to link together multiple NICs. Linking or trunking together NICs can permit the creation of a NIC aggregation that can transmit and receive data over a network at speeds much greater than the speed at which any single network interface card within the aggregation can transmit or receive data.
When creating a virtual hard disk for use in a network boot system, a network filter driver associated with a network stack may bind to each of the physical network interface cards on a provisioning server. If multiple network interface cards on the provisioning server have been trunked or linked together via network interface card teaming software, the network interface card teaming software can create a single unified virtual network interface card team to which the network filter driver will bind. Teaming software creates a network interface card team by associating each NIC team member's physical MAC address. When provisioning the virtual hard disk to a client machine, issues arise because the MAC addresses of the NICs differ on different machines. Therefore, the NIC teaming software cannot establish a team during boot time and therefore fails to stream the virtual disk.
The issues posed by creating a virtual disk based in part on a physical disk employing a teaming module to link network interface cards may not be overcome by using the physical network interface card details of the client machine and presenting them to the streamed operating system. Such a solution likely will fail because the MAC addresses associated with the physical network interface cards will differ from the MAC addresses on different computing machines. This difference can confuse the network stack and hinder the network stack from operating both efficiently and properly. NIC teaming may also be limited to a private image mode because the physical MAC addresses differ from machine to machine. The differing MAC addresses make it difficult for the NIC teaming software to re-create a NIC team during boot time since each NIC team identifies the underline physical NIC by MAC address. Thus, a need exists for a virtual disk creation and delivery method that permits the virtual disk to retain its network interface card teaming capabilities without hindering the virtual disk provisioning process.